package czStvDpds;

import czStvDpds.graphics.Drawing2D;
import czStvDpds.graphics.GameWindow;
import czStvDpds.i18n.Internationalization;
import czStvDpds.logging.Logging;
import czStvDpds.mapmanagment.Map;
import czStvDpds.mapmanagment.MapLoader;
import czStvDpds.movement.Player;
import java.util.logging.Logger;

/**
 * Hello world!
 *
 */
public class App {

    public static void main(String[] args) {
        //přidání knihoven do systémo proměnné
        addLibs();

        Logger logger = Logging.getMainLogger();
        logger.info("Hello World!");
        Internationalization.setLocale("cs", "CZ");

        Drawing2D draw = GameWindow.getDrawing();
        draw.setWindowState(GameWindow.GAME);
        draw.addPlayer(new Player(10,10,0));

        // Zkouška nahrání mapy
        try {
            // Nahrát mapu ze souboru
            Map testMap = MapLoader.loadMap("resources/maps/testMap.TXT");
            System.out.println("mapa načtena");
            Thread.sleep(500);
//            String path = new MapLoader().getClass().getResource("testMap.txt").toURI().toString(); // ?
//            Map testMap = MapLoader.loadMap(path);

            // Předat mapu grafice
//            Drawing draw = GraphicsIndex.getDrawing();
//            draw.setWindowState(Window.GAME);
            System.out.println("okno vytvoreno");
            draw.setMapData(testMap);
        } catch (Exception ex) {
            logger.info("Nepodarilo se nahrat mapu " );
        }

        Logging.flushAllHandlers();
    }

    public static void addLibs() {
        String separator = System.getProperty("file.separator");
//        System.setProperty("org.lwjgl.librarypath", System.getProperty("user.dir") + separator + "resources"+separator+"lib" + separator + osDetection());
        System.setProperty("org.lwjgl.librarypath", System.getProperty("user.dir") + separator + "target" + separator + "natives");
    }
}
